home *** CD-ROM | disk | FTP | other *** search
/ Nebula 2 / Nebula Two.iso / SourceCode / Database / SimpleTableView-1 / DataTableView.m < prev    next >
Text File  |  1995-06-12  |  2KB  |  70 lines

  1. // -------------------------------------------------------------------------------------
  2. //  TableView
  3. //  This software is without warranty of any kind.  Use at your own risk.
  4. // -------------------------------------------------------------------------------------
  5.  
  6. #import <appkit/appkit.h>
  7. #import <dbkit/dbkit.h>
  8. #import <objc/objc.h>
  9. #import <libc.h>
  10. #import <stdlib.h>
  11. #import <string.h>
  12. #import <c.h>
  13. #import <ctype.h>
  14. #import <sys/param.h>
  15. #import <sys/types.h>
  16. #import <sys/time.h>
  17. #import "DataTableView.h"
  18.  
  19. // -------------------------------------------------------------------------------------
  20. @interface DBTableView(Private)
  21. - mouseDownAt:(u_int)row :(u_int)column inView:aView onEvent:(NXEvent*) e;
  22. - mouseStartedDragAt:(u_int)row :(u_int)column inView:aView onEvent:(NXEvent*)e;
  23. - mouseDraggedTo:(u_int)row :(u_int)column inView:aView onEvent:(NXEvent*)e;
  24. - mouseEndedDragAt:(u_int)row :(u_int)column inView:aView onEvent:(NXEvent*)e;
  25. - mouseUpAt:(u_int)row :(u_int)column inView:aView onEvent:(NXEvent*)e;
  26. @end
  27.  
  28. // -------------------------------------------------------------------------------------
  29. @implementation TableView
  30. // -------------------------------------------------------------------------------------
  31.  
  32. // -------------------------------------------------------------------------------------
  33. // initialization
  34.  
  35. /* init */
  36. - initFrame:(const NXRect *) newFrame
  37. {
  38.     id    rtn = [super initFrame:newFrame];
  39.     lastMouseUpRow = -1;
  40.     lastMouseUpColumn = -1;
  41.     return rtn;
  42. }
  43.  
  44. // -------------------------------------------------------------------------------------
  45. // mouse method overrides
  46.  
  47. /* mouse up */
  48. - mouseUpAt:(u_int)row :(u_int)column inView:aView onEvent:(NXEvent*)e
  49. {
  50.     if (aView == rowHeading) { lastMouseUpRow = row; lastMouseUpColumn = -1; } else
  51.     if (aView == columnHeading) { lastMouseUpRow = -1; lastMouseUpColumn = row; } else
  52.     if (aView == gridView) { lastMouseUpRow = row; lastMouseUpColumn = column; }
  53.     else { lastMouseUpRow = -1; lastMouseUpColumn = -1; }
  54.     return [super mouseUpAt:row:column inView:aView onEvent:e];
  55. }
  56.  
  57. /* return last mouse up row */
  58. - (int)selectedCellRow
  59. {
  60.     return lastMouseUpRow;
  61. }
  62.  
  63. /* return last mouse up column */
  64. - (int)selectedCellColumn
  65. {
  66.     return lastMouseUpColumn;
  67. }
  68.  
  69. @end
  70.